home *** CD-ROM | disk | FTP | other *** search
/ ASME's Mechanical Engine…ing Toolkit 1997 December / ASME's Mechanical Engineering Toolkit 1997 December.iso / elec_eng / eepddsk4.lzh / HELICAL.ASC < prev    next >
Text File  |  1986-04-17  |  7KB  |  117 lines

  1. 100 CLS :REM "HELICAL"
  2. 110 PRINT TAB(25);"**** HELICAL RESONATORS ****" :PRINT
  3. 120 REM W.MACALINE, R.SCHILDKENECHT-1959; A.ZVEREV-1967 & V.HEESEN-1985
  4. 130 PRINT :PRINT "THIS PROGRAM CALCULATES THE PHYSICAL and ELECTRICAL";
  5. 140 PRINT " PROPERTIES of" :PRINT "HELICAL COIL RESONATORS" :PRINT :PRINT
  6. 150 FL=0 :FO=0 :ZO=0 :BW=0 :RT=0 :LT=LOG(10) :PI=4*ATN(1)
  7. 160 PRINT :BEEP :INPUT "ENTER RESONATE FREQUENCY    (Mhz) ";FO
  8. 170 IF FO<5 OR FO>5000 THEN 1250
  9. 180 PRINT :BEEP :INPUT "ENTER RESONATOR IMPEDANCE  (ohms) ";ZO
  10. 190 IF ZO<200 OR ZO>5000 THEN 1250
  11. 200 PRINT :BEEP :INPUT "ENTER BW (3DB)    in Mhz";BW3
  12. 210 PRINT :BEEP :INPUT "ENTER IMPEDANCE of TAP  ";RT
  13. 220 D=98*10^3/(FO*ZO) :IF D<1 THEN 240 ELSE DS=INT(D*100)/100 :U$="inches"
  14. 230 GOTO 250
  15. 240 DS=INT(D*1000) :U$="mils"
  16. 250 LS=1.5*DS :IF D>1 THEN LS=INT(LS*100)/100 ELSE LS=INT(LS)
  17. 260 DC=.55*DS :IF D>1 THEN DC=INT(DC*100)/100 ELSE DC=INT(DC)
  18. 270 L=1.5*DC :IF D>1 THEN L=INT(L*100)/100 ELSE L=INT(L)
  19. 280 N=1900/(FO*D) :N=INT(N*100)/100 :IF N<3.5 OR N>100  THEN 1250
  20. 290 QU=50*D*SQR(FO) :QU=INT(QU) :QUS=QU*1.2 :QUS=INT(QUS)
  21. 300 SP=(FO*(D^2))/2300 :SP=SP*1000 :SP=INT(SP*100)/100
  22. 310 SD=(2.606/SQR(FO))
  23. 320 WN=.4*SP :WN=INT(WN*100)/100
  24. 330 WX=.6*SP :WX=INT(WX*100)/100 :IF WX<(5*SD) THEN 1250
  25. 340 CLS :PRINT
  26. 350 PRINT TAB(26);CHR$(218); :FOR U=27 TO 39 :PRINT TAB(U);CHR$(196); :NEXT U
  27. 360 PRINT TAB(40);CHR$(191);TAB(43);CHR$(196);CHR$(194);CHR$(196)
  28. 370 PRINT TAB(26);CHR$(179);"-----Ds------";CHR$(179);"   ";CHR$(124)
  29. 380 PRINT TAB(26);CHR$(179);"  ";CHR$(179);"--Dc--";CHR$(179);TAB(40);CHR$(179);
  30. 390 PRINT "   ";CHR$(124)
  31. 400 PRINT TAB(26);CHR$(179);TAB(30);"_______";TAB(37);"/  ";CHR$(179);
  32. 410 PRINT CHR$(194);"  ";CHR$(124)
  33. 420 PRINT TAB(26);CHR$(179);"  (_______   ";CHR$(179);CHR$(124);"  ";CHR$(124)
  34. 430 PRINT TAB(26);CHR$(179);TAB(30);"_______)- ";CHR$(179);CHR$(124);"  Ls"
  35. 440 PRINT TAB(26);CHR$(179);"  (_______ sp";CHR$(179);"Lc ";CHR$(124)
  36. 450 PRINT TAB(26);CHR$(179);TAB(30);"_______)- ";CHR$(179);CHR$(124);"  ";
  37. 460 PRINT CHR$(124)
  38. 470 PRINT TAB(26);CHR$(179);"  (_______   ";CHR$(179);CHR$(124);"  ";CHR$(124)
  39. 480 PRINT TAB(26);CHR$(179);TAB(30);"_______)  ";CHR$(179);CHR$(124);"  ";
  40. 490 PRINT CHR$(124)
  41. 500 PRINT TAB(20);"TAP------(__________";CHR$(179);CHR$(193);"  ";CHR$(124)
  42. 510 PRINT TAB(26);CHR$(179);TAB(40);CHR$(179);"   ";CHR$(124)
  43. 520 PRINT TAB(26);CHR$(192);:FOR U=27 TO 39 :PRINT TAB(U);CHR$(196); :NEXT U
  44. 530 PRINT TAB(40);CHR$(217);TAB(43);CHR$(196);TAB(44);CHR$(193);TAB(45);
  45. 540 PRINT CHR$(196)
  46. 550 PRINT :PRINT "RESONATE FREQUENCY=";FO;"Mhz";TAB(35);"IMPEDANCE=";ZO;"ohms";
  47. 560 PRINT TAB(60);"BW (3DB)=";BW3;"Mhz"
  48. 570 PRINT :PRINT "SHIELD DIA.  (Ds)=";DS;U$;TAB(35);"SHIELD LENGTH (Ls)";
  49. 580 PRINT CHR$(247);LS;U$
  50. 590 PRINT "COIL DIA.    (Dc)=";DC;U$;TAB(35);"COIL LENGTH   (Lc)=";L;U$
  51. 600 PRINT "WIRE SPACING (sp)=";SP;"mils";TAB(35);"NUMBER OF TURNS   =";
  52. 610 PRINT INT(N*100)/100
  53. 620 PRINT "QU (round shield)=";QU;TAB(35);"QU (square shield)=";QUS
  54. 630 PRINT "WIRE DIA.   (MIN)=";WN;"mils";TAB(35);"WIRE DIA.    (MAX)=";WX;"mils"
  55. 640 QL=FO/BW3 :QO=QUS/QL
  56. 650 PRINT :BEEP :INPUT "ENTER No. OF POLES (2-7)";NP :IF NP>7 THEN 650
  57. 660 ON NP GOTO 650,670,680,690,700,710,720
  58. 670 Q1=1.412 :IL=20*(LOG((1.412/QO)+1)/LT) :GOTO 730
  59. 680 Q1=1 :IL=20*(LOG((2/QO^2)+(2/QO)+1)/LT) :GOTO 730
  60. 690 Q1=.7654 :IL=20*(LOG((2.62/QO^3)+(3.41/QO^2)+(2.62/QO)+1)/LT) :GOTO 730
  61. 700 Q1=.618 :IL=20*(LOG((3.24/QO^4)+(5.23/QO^3)+(5.23/QO^2)+(3.24/QO)+1)/LT) :GOTO 730
  62. 710 Q1=.518 :IL=20*(LOG((3.84/QO^5)+(7.42/QO^4)+(9.109999/QO^3)+(7.43/QO^2)+(3.84/QO)/LT) :GOTO 730
  63. 720 Q1=.445 :IL=20*(LOG((4.46/QO^6)+(10/QO^5)+(14.5/QO^4)+(14.6/QO^3)+(10/QO^2)+(4.46/QO)+1)/LT)
  64. 730 PRINT :PRINT "INSERTION LOSS=";INT(IL*100)/100;"DB" :PRINT
  65. 740 QD=.5*Q1*(FO/BW3) :RZ=(PI/4)*((1/QD)-(1/QU))
  66. 750 SN=SQR((RZ/2)*(RT/ZO)) :RAD=180/PI
  67. 760 SNN=ATN(SN)*RAD
  68. 770 TLN=(N*SNN)/90 :TLN=CINT(TLN*1000)/1000
  69. 780 TLD=N*SNN*4 :TLD=CINT(TLD)
  70. 790 PRINT "TAP LOCATION =";TLN;"TURNS or ";TLD;"DEGREES FROM GROUNDED END."
  71. 800 PRINT :BEEP :PRINT "HARD COPY REQUIRED? (Y/N)"
  72. 810 P$=INKEY$ :IF P$="" THEN 810
  73. 820 IF P$<>"Y" THEN 1210
  74. 830 LPRINT :LPRINT TAB(25);"*** HELICAL RESONATOR DESIGN ***" :IF FL=1 THEN 1080
  75. 840 LPRINT :LPRINT "PROJECT:----------------------------------------------";
  76. 850 LPRINT TAB(56);"DATE:------------------" :LPRINT :LPRINT
  77. 860 LPRINT TAB(6);CHR$(240); :FOR U=7 TO 19 :LPRINT TAB(U);CHR$(241); :NEXT U
  78. 870 LPRINT TAB(20);CHR$(242);TAB(23);CHR$(241);CHR$(243);CHR$(241);TAB(30);
  79. 880 LPRINT "NOTES: 1. BW (3DB)=";BW3 MHZ;"; No.POLES=";NP
  80. 890 LPRINT TAB(6);CHR$(245);"-----Ds------";CHR$(245);"   ";CHR$(124);TAB(37);
  81. 900 LPRINT "2. Q (square shield used for INS. LOSS."
  82. 910 LPRINT TAB(6);CHR$(245);"  ";CHR$(245);"--Dc--";CHR$(245);TAB(20);
  83. 920 LPRINT CHR$(245);"   ";CHR$(124);TAB(37);"3."
  84. 930 LPRINT TAB(6);CHR$(245);TAB(10);"_______";TAB(17);"/  ";CHR$(245);
  85. 940 LPRINT CHR$(243);"  ";CHR$(124);"4."
  86. 950 LPRINT TAB(6);CHR$(245);"  (_______   ";CHR$(245);CHR$(124);"  ";CHR$(124)
  87. 960 LPRINT TAB(6);CHR$(245);TAB(10);"_______)- ";CHR$(245);CHR$(124);"  Ls"
  88. 970 LPRINT TAB(6);CHR$(245);"  (_______ sp";CHR$(245);"Lc ";CHR$(124)
  89. 980 LPRINT TAB(6);CHR$(245);TAB(10);"_______)- ";CHR$(245);CHR$(124);"  ";
  90. 990 LPRINT CHR$(124)
  91. 1000 LPRINT TAB(6);CHR$(245);"  (_______   ";CHR$(245);CHR$(124);"  ";CHR$(124)
  92. 1010 LPRINT TAB(6);CHR$(245);TAB(10);"_______)  ";CHR$(245);CHR$(124);"  ";
  93. 1020 LPRINT CHR$(124)
  94. 1030 LPRINT "TAP-----(__________";CHR$(245);CHR$(248);"  ";CHR$(124)
  95. 1040 LPRINT TAB(6);CHR$(245);TAB(20);CHR$(245);"   ";CHR$(124)
  96. 1050 LPRINT TAB(6);CHR$(246);:FOR U=7 TO 19 :LPRINT TAB(U);CHR$(241); :NEXT U
  97. 1060 LPRINT TAB(20);CHR$(247);TAB(23);CHR$(241);TAB(24);CHR$(248);TAB(25);
  98. 1070 LPRINT CHR$(241) :FL=1 :KT=0
  99. 1080 LPRINT :LPRINT "RESONATE FREQUENCY=";FO;"Mhz";TAB(35);"IMPEDANCE=";ZO;
  100. 1090 LPRINT "ohms  INSERTION LOSS=";INT(IL*100)/100;"DB"
  101. 1100 LPRINT :LPRINT "SHIELD DIA.  (Ds)=";DS;U$;TAB(35);"SHIELD LENGTH (Ls)";
  102. 1110 LPRINT CHR$(126);LS;U$
  103. 1120 LPRINT "COIL DIA.    (Dc)=";DC;U$;TAB(35);"COIL LENGTH   (Lc)=";L;U$
  104. 1130 LPRINT "WIRE SPACING (sp)=";SP;"mils";TAB(35);"QU=";QU;"or";QUS;
  105. 1140 LPRINT "(square shield)" :LPRINT "NUMBER of TURNS=";INT(N*100)/100;
  106. 1150 LPRINT TAB(35)"WIRE DIA.   (MIN)=";WN;"mils" :LPRINT "TAP IMPEDANCE  =";
  107. 1160 LPRINT ;RT;"ohms";TAB(35);"WIRE DIA.   (MAX)=";WX;"MILS"
  108. 1170 IF KT<1 THEN 1190
  109. 1180 LPRINT "BANDWIDTH (3DB)=";BW3;TAB(35);"NUMBER of POLES  =";INT(NP)
  110. 1190 LPRINT "TAP LOCATION   =";TLN;"TURNS or";TLD;"DEGREES from GROUNDED END."
  111. 1200 KT=KT+1
  112. 1210 PRINT :BEEP :PRINT "RERUN PROGRAM? (Y/N)"
  113. 1220 A$=INKEY$ :IF A$="" THEN 1220
  114. 1230 IF A$="Y" THEN RUN
  115. 1240 IF A$<>"N" THEN 1220 ELSE END
  116. 1250 PRINT :PRINT "THIS DESIGN IS INADVISABLE!!" :GOTO 1210
  117.